Time linear arrival for velocity mode seeks

ABSTRACT

A method, computer program product, and apparatus for controlling the arrival of a disc drive actuator arm assembly using a time-linear arrival profile are disclosed. A reference velocity is calculated as a function of the current position of the arm assembly and the amount of time left to complete the seek operation, where the first derivative of the reference velocity function with respect to time varies linearly with respect to time. This reference velocity is used to control the actual velocity of an arm assembly. In a preferred embodiment, this time-linear arrival is utilized in the second stage of a two-stage arrival sequence, in which the arm assembly follows a constant-acceleration profile during the first stage.

FIELD OF THE INVENTION

Embodiments of the present invention relate generally to control systemsfor disc drives. More particularly, the present embodiments relate toimproving seek performance in a disc drive by way of a control systememploying an improved reference profile for controlling arrival at atrack.

BACKGROUND OF THE INVENTION

Disc drives are commonly used in workstations, personal computers,laptops and other computer systems to store large amounts of data in aform that can be made readily available to a user. In general, a discdrive comprises a magnetic disc that is rotated by a spindle motor. Thesurface of the disc is divided into a series of data tracks. The datatracks are spaced radially from one another across a band having aninner diameter and an outer diameter.

Each of the data tracks extends generally circumferentially around thedisc and can store data in the form of magnetic transitions within theradial extent of the track on the disc surface. An interactive element,such as a magnetic transducer, is used to sense the magnetic transitionsto read data, or to transmit an electric signal that causes a magnetictransition on the disc surface, to write data. The magnetic transducerincludes a read/write gap that contains the active elements of thetransducer at a position suitable for interaction with the magneticsurface of the disc. The radial dimension of the gap fits within theradial extent of the data track containing the transitions so that onlytransitions of the single track are transduced by the interactiveelement when the interactive element is properly centered over therespective data track.

The magnetic transducer is mounted by a head structure to a rotaryactuator arm and is selectively positioned by the actuator arm over apreselected data track of the disc to either read data from or writedata to the preselected data track of the disc, as the disc rotatesbelow the transducer. The actuator arm is, in turn, mounted to a voicecoil motor that can be controlled to move the actuator arm across thedisc surface.

A servo system is typically used to control the position of the actuatorarm to insure that the head is properly centered over the magnetictransitions during either a read or write operation. In a known servosystem, servo position information is recorded on the disc surfacebetween written data blocks, and periodically read by the head for usein a closed loop control of the voice coil motor to position theactuator arm. Such a servo arrangement is referred to as an embeddedservo system.

In modern disc drive architectures utilizing an embedded servo, eachdata track is divided into a number of data sectors for storing fixedsized data blocks, one per sector. Associated with the data sectors area series of servo sectors, generally equally spaced around thecircumference of the data track. The servo sectors can be arrangedbetween data sectors or arranged independently of the data sectors suchthat the servo sectors split data fields of the data sectors.

Each servo sector contains magnetic transitions that are arrangedrelative to a track centerline such that signals derived from thetransitions can be used to determine head position. For example, theservo information can comprise two separate bursts of magnetictransitions, one recorded on one side of the track centerline and theother recorded on the opposite side of the track centerline. Whenever ahead is over a servo sector, the head reads each of the servo bursts andthe signals resulting from the transduction of the bursts aretransmitted to, e.g., a microprocessor within the disc drive forprocessing.

When the head is properly positioned over a track centerline, the headwill straddle the two bursts, and the strength of the combined signalstransduced from the burst on one side of the track centerline will equalthe strength of the combined signals transduced from the burst on theother side of the track centerline. The microprocessor can be used tosubtract one burst value from the other each time a servo sector is readby the head. When the result is zero, the microprocessor will know thatthe two signals are equal, indicating that the head is properlypositioned.

If the result is other than zero, then one signal is stronger than theother, indicating that the head is displaced from the track centerlineand overlying one of the bursts more than the other. The magnitude andsign of the subtraction result can be used by the microprocessor todetermine the direction and distance the head is displaced from thetrack centerline, and generate a control signal to move the actuatorback towards the centerline.

Each servo sector also contains encoded information to uniquely identifythe specific track location of the head. For example, each track can beassigned a unique number, which is encoded using a Gray code andrecorded in each servo sector of the track. The Gray code information isused in conjunction with the servo bursts to control movement of theactuator arm when the arm is moving the head in a seek operation from acurrent track to a destination track containing a data field to be reador written.

A seek operation generally consists of three phases, an accelerationphase in which the actuator arm begins to move and picks up speed, acoasting phase during which acceleration stays constant (if required),and a deceleration phase in which the actuator arm (and head) slows downto arrive at the desired track. The final approach of the head to thedesired track is known as “arrival.”

The arrival portion of a seek operation can have a profound impact onthe performance of a disc drive, since seeking is one of the mostexpensive operations performed by a disc drive in terms of performancecost. Because acceleration and velocity are continuous physicalquantities, it is not possible for the actuator arm to come to aninstantaneous stop from any arbitrary velocity. Instead, the actuatorarm must gradually decelerate at a controlled rate in order for the headto become centered over the desired track. If deceleration is too rapid,the actuator arm control system may experience overshoot andinstabilities (such as oscillation) that make track following difficultand ultimately result in performance degradation. If, on the other hand,deceleration is too gradual, performance will also be degraded becausethe seek operation itself will take too long.

The present embodiments provide a solution to this and other problems,and offers other advantages over previous solutions.

SUMMARY OF THE INVENTION

Embodiments of the present invention provide a method and apparatus forcontrolling the arrival of a disc drive actuator arm assembly using atime-linear arrival profile. Some embodiments of the present inventionemploy a closed-loop control system in which velocity is the controlledparameter. A reference velocity is calculated as a function of thecurrent position of the arm assembly and the amount of time left tocomplete the seek operation, where the first derivative of the referencevelocity function with respect to time varies linearly with respect totime. This computed reference velocity is compared to the actualvelocity as determined from measuring the position of the arm assemblyand the actual command signal applied to the arm assembly motor. Anerror signal is thus obtained. This error signal is summed with afeedforward signal to achieve the desired command signal, where thefeedforward signal is derived from the measured acceleration of the armassembly. In some embodiments, this time-linear arrival is utilized inthe second stage of a two-stage arrival sequence, in which the armassembly follows a constant-acceleration profile during the first stage.

These and various other features as well as advantages whichcharacterize the present embodiments will be apparent upon reading ofthe following detailed description and review of the associateddrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an exemplary perspective view of an exemplary disc drive.

FIG. 2 is an exemplary top plan view of the printed circuit board of theexemplary disc drive of FIG. 1.

FIG. 3 is a block diagram of a disc drive actuator arm control system inaccordance with embodiments of the present invention;

FIG. 4 is a flowchart representation of a process of performing a seekin accordance with embodiments of the present invention; and

FIG. 5 is a phase plane diagram depicting the operation of a trackarrival using square root and time-linear arrival profiles in accordancewith embodiments of the present invention.

DETAILED DESCRIPTION

Referring now to the drawings, and initially to FIG. 1, there isillustrated an example of a disc drive designated generally by thereference numeral 20. The disc drive 20 includes a stack of storagediscs 22 a–d and a stack of read/write heads 24 a–h. In the depictedexample, heads are only shown on the top surface of each platter of thedisc driver for simplicity and clarity of the drawing, however, itshould be noted that additional heads are typically provided for thebottom surfaces of each platter as well. Each of the storage discs 22a–d is provided with a plurality of data tracks to store user data. Asillustrated in FIG. 1, one head is provided for each surface of each ofthe discs 22 a–d such that data can be read from or written to the datatracks of all of the storage discs. The heads are coupled to apre-amplifier 31. It should be understood that the disc drive 20 ismerely representative of a disc drive system utilizing the presentinvention and that the present embodiments can be implemented in a discdrive system including more or fewer storage discs.

The storage discs 22 a–d are mounted for rotation by a spindle motorarrangement 29, as is known in the art. Moreover, the read/write heads24 a–h are supported by respective actuator arms 28 a–h for controlledpositioning over preselected radii of the storage discs 22 a–d to enablethe reading and writing of data from and to the data tracks. To thatend, the actuator arms 28 a–h are rotatably mounted on a pin 30 by avoice coil motor 32 operable to controllably rotate the actuator arms 28a–h radially across the disc surfaces. One of ordinary skill in the artwill recognize that some disc drives utilize linear voice coil actuatorarms that move laterally along a radial direction with respect to thediscs, rather than the rotary voice coil actuator arms depicted here.

Each of the read/write heads 24 a–h is mounted to a respective actuatorarm 28 a–h by a flexure element (not shown) and comprises a magnetictransducer 25 mounted to a slider 26 having an air bearing surface (notshown), all in a known manner. As typically utilized in disc drivesystems, the sliders 26 cause the magnetic transducers 25 of theread/write heads 24 a–h to “fly” above the surfaces of the respectivestorage discs 22 a–d for non-contact operation of the disc drive system,as discussed above. When not in use, the voice coil motor 32 rotates theactuator arms 28 a–h during a contact stop operation, to position theread/write heads 24 a–h over a respective landing zone 58 or 60, wherethe read/write heads 24 a–h come to rest on the storage disc surfaces.As should be understood, each of the read/write heads 24 a–h is at reston a respective landing zone 58 or 60 at the commencement of a contactstart operation.

A printed circuit board (PCB) 34 is provided to mount controlelectronics for controlled operation of the spindle motor 29 and thevoice coil motor 32. The PCB 34 also includes read/write channelcircuitry coupled to the read/write heads 24 a–h via the pre-amplifier31, to control the transfer of data to and from the data tracks of thestorage discs 22 a–d. The manner for coupling the PCB 34 to the variouscomponents of the disc drive is well known in the art, and includes aconnector 33 to couple the read/write channel circuitry to thepre-amplifier 31.

Referring now to FIG. 2, there is illustrated in schematic form the PCB34 and the electrical couplings between the control electronics on thePCB 34 and the components of the disc drive system described above. Amicroprocessor 35 is coupled to each of a read/write control 36, spindlemotor control 38, actuator control 40, ROM 42 and RAM 43. In modern discdrive designs, the microprocessor can comprise a digital signalprocessor (DSP). The microprocessor 35 sends data to and receives datafrom the storage discs 22 a–d via the read/write control 36 and theread/write heads 24 a–h.

The microprocessor 35 also operates according to instructions stored inthe ROM 42 to generate and transmit control signals to each of thespindle motor control 38 and the actuator control 40. The spindle motorcontrol 38 is responsive to the control signals received from themicroprocessor 35 to generate and transmit a drive voltage to thespindle motor 29 to cause the storage discs 22 a–d to rotate at anappropriate rotational velocity.

Similarly, the actuator control 40 is responsive to the control signalsreceived from the microprocessor 35 to generate and transmit a voltageto the voice coil motor 32 to controllably rotate the read/write heads24 a–h, via the actuator arms 28 a–h, to preselected radial positionsover the storage discs 22 a–d. The magnitude and polarity of the voltagegenerated by the actuator control 40, as a function of themicroprocessor control signals, determines the radial direction andradial speed of the read/write heads 24 a–h.

When data to be written or read from one of the storage discs 22 a–d arestored on a data track different from the current radial position of theread/write heads 24 a–h, the microprocessor 35 determines the currentradial position of the read/write heads 24 a–h and the radial positionof the data track where the read/write heads 24 a–h are to be relocated.The microprocessor 35 then implements a seek operation wherein thecontrol signals generated by the microprocessor 35 for the actuatorcontrol 40 cause the voice coil motor 32 to move the read/write heads 24a–h from the current data track to a destination data track at thedesired radial position.

When the actuator has moved the read/write heads 24 a–h to thedestination data track, a multiplexer (not shown) is used to couple thehead 24 a–h over the specific data track to be written or read, to theread/write control 36, as is generally known in the art. The read/writecontrol 36 includes a read channel that, in accordance with modern discdrive design, comprises an electronic circuit that detects informationrepresented by magnetic transitions recorded on the disc surface withinthe radial extent of the selected data track. As described above, eachdata track is divided into a number of data sectors.

During a read operation, electrical signals transduced by the head fromthe magnetic transitions of the data sectors are input to the readchannel of the read/write control 36 for processing via thepre-amplifier 31. The RAM 43 can be used to buffer data read from or tobe written to the data sectors of the storage discs 22 a–d via theread/write control 36. The buffered data can be transferred to or from ahost computer utilizing the disc drive for data storage.

The present embodiments provide a method and apparatus for controllingthe arrival of a disc drive actuator arm assembly using a time-lineararrival profile. Some embodiments of the present invention employ aclosed-loop control system in which velocity is the controlledparameter. A reference velocity is calculated as a function of thecurrent position of the arm assembly and the amount of time left tocomplete the seek operation, where the first derivative of the referencevelocity function with respect to time varies linearly with respect totime. This computed reference velocity is compared to the actualvelocity as determined from measuring the position of the arm assemblyand the actual command signal applied to the arm assembly motor. Anerror signal is thus obtained. This error signal is summed with afeedforward signal to achieve the desired command signal, where thefeedforward signal is derived from the measured acceleration of the armassembly.

In some embodiments, the arrival phase of a seek operation is conductedin two stages. In the first stage, the acceleration (which is actuallydeceleration in the case of arrival) is a constant and represents anoptimum level of acceleration for the voice coil motor. This allows thearm assembly to move at an optimal velocity for as long as practicable.This first stage is said to follow a “square root” velocity profile,because the velocity of the head when acceleration is constant is√{square root over (2ax)}, where a is the instantaneous acceleration ofthe head and x is the position of the head as measured from the desiredtrack. In a preferred embodiment, the “desired track” that is used tocompute the square root velocity profile may not be the actual track towhich the entire seek will take place; an optimal target track for thesquare root velocity profile is chosen at the beginning in order tooptimize the overall seek time.

The second stage is the “time-linear arrival” stage, in which theacceleration of the head varies linearly with respect to time until theacceleration, velocity, and position of the head converge at zero at thedesired track. In a preferred embodiment, the point at which thetransition from the “square-root” velocity profile stage to the“time-linear arrival” stage takes place is determined before the seekoperation takes place, by determining a point at which a smoothtransition may be made from the square root profile to the time-lineararrival profile. One of ordinary skill in the art will recognize thatsuch a transition point may be determined by setting one or more of themotion functions (e.g., velocity or acceleration) of one profile equalto the corresponding function(s) from the other profile and solving forthe unknown distance at which the acceleration and/or velocity value(s)from both profiles are equal. An example of this transition process isprovided in FIG. 5. FIG. 5 is a phase plane diagram of a two-stagearrival in accordance with embodiments a of the present invention. Graph500 shows a transition point 502 between a square root velocity profile(solid line) and a time-linear arrival profile (dashed line) in terms ofhead velocity and the number of tracks to go in the seek operation.Similarly graph 550 depicts a transition point 552 between a square rootvelocity profile (solid line) and a time-linear arrival profile (dashedline) in terms of head deceleration and the number of tracks to go inthe seek operation.

In the “time-linear arrival” stage, the position of the head variespolynomially with respect to time, rather than exponentially. A set ofbasic motion functions for a time-linear arrival are as follows:

$\begin{matrix}\begin{matrix}{{{a(t)} = {a_{0}{mt}}},} \\{{{v(t)} = {\frac{1}{2}a_{0}m\; t^{2}}},}\end{matrix} \\{{{x(t)} = {\frac{1}{6}a_{0}m\; t^{3}}},}\end{matrix}$where m, the “slope constant,” determines the slope of the accelerationfunction a(t). If the total time to decelerate from a₀ to 0 is given asT, then m=T⁻¹. Thus, by “time linear” it is meant that accelerationvaries linearly with respect to time. Since instantaneous accelerationis the first derivative (from the differential calculus) ofinstantaneous velocity, it is a necessary and sufficient condition of atime-linear arrival profile that the first derivative of the velocityvaries linearly with respect to time. It can be easily verified that theabove motion functions for time-linear arrival may be rewritten asfollows:

$\begin{matrix}\begin{matrix}{{{a(t)} = \frac{2v}{t}},} \\{{{v(t)} = \frac{3x}{t}},}\end{matrix} \\{{x(t)} = {\frac{a_{0}}{6m^{2}}.}}\end{matrix}$

It can also be easily verified that the following equations also definea time-linear arrival profile:

$\begin{matrix}{{{a({SamsToGo})} = \frac{2v}{SamsToGo}},} \\{{{v({SamsToGo})} = \frac{3x}{SamsToGo}},} \\{{{x({SamsToGo})} = {\frac{1}{6}{a_{0} \cdot {SamsToGo}^{2}}}},}\end{matrix}$where SamsToGo represents the number of sampling periods left in theduration of the seek operation. In some embodiments, these samplingperiods correspond to the time periods between successive samples ofservo information from the disc to determine the position of the headwith respect to the disc's tracks. These motion functions in terms ofSamsToGo are easily calculated in fixed-point arithmetic in digitalcircuitry or in a stored-program computer. In a preferred embodiment,SamsToGo itself is predetermined according to empirical data gatheredduring the design process of the disc drive, as this number will bespecific to a particular mechanical and electrical design. Embodimentsof the present invention determine a reference velocity v_(ref)(t) usingthe above function definition for v(t) by applying an empiricallyestimated position value for x and the estimated number samplesremaining as SamsToGo. v_(ref)(t) is then compared with an empiricallyestimated velocity figure to derive an error signal, which is then usedto correct the command signal fed to the voice coil motor.

FIG. 3 is a block diagram of a disc drive actuator arm control system inaccordance with embodiments of the present invention. The block diagramrepresented in FIG. 3 is representative of control circuitry or programcode for computer-based control. Although this discussion will refer tothe elements described in FIG. 3 in terms of components of a controlcircuit (e.g., multiplier 302, etc.), it should be understood by thoseskilled in the art that the control system described in FIG. 3 may beimplemented in program code for execution in a stored-program computingdevice (e.g., a microprocessor, microcontroller, DSP, or other devicethat executes software), in dedicated circuitry, or in a combination ofboth. Each block in FIG. 3 may be implemented as one or moreinstructions in a programming language such as C, for example.

In some embodiments, while the square root profile is being used, afeedforward signal 300 is generated based on the maximum current drivefor plant 318, which, in some embodiments, is a voice coil motor.Feedforward signal 300 represents a desired acceleration profile. In the“square-root” velocity profile mode of operation, feedforward signal 300is a constant that represents the maximum command current that can befed to plant 318. In the “time-linear arrival” velocity profile mode, onthe other hand, acceleration varies linearly with respect to time. Thus,during the time-linear arrival portion of a seek operation, feedforwardsignal 301, which is derived from an empirically estimated acceleration,is used instead (which is itself computed from the velocity of the headas determined by estimator 308—where the acceleration is calculated fromvelocity as 2v/SamsToGo and the velocity is calculated as 3x/SamsToGo).In FIG. 3, a switch 303 represents the ability to switch from the squareroot velocity profile to the time-linear arrival profile. Theclosed-loop system of FIG. 3 uses velocity as the controlled parameterto correct feedforward signal 300 (in the square root profile) orfeedforward signal 301 (in the time-linear arrival profile) in order tobe used as a command signal to plant 318.

Multiplier 302 converts feedforward signal 300 from a value of anelectrical current (i.e., to drive plant 318) to an acceleration value.Meanwhile, the desired track (target track 306) is compared withposition feedback information from plant 318 to generate a positionvalue X (summing block 307). Reference velocity generator 304 takes thiscurrent position information and current acceleration information anduses this information, along with the number of remaining samplingperiods (SamsToGo) and derives a reference velocity. This referencevelocity is derived according to a different formula, depending onwhether the “square root” profile is being used or the “time-lineararrival” profile is being used, as shown in FIG. 3. In the square-rootprofile, the reference velocity is computed as sqrt(2*a*X) (whichdenotes √{square root over (2ax)} in several programming languages). Inthe “time-linear arrival” profile, the reference velocity is computed as(3*X)/SamsToGo. A limiter 310 is applied to the output of referencevelocity generator 304 to keep the output within acceptable ranges.

Estimator 308 takes position feedback information from plant 318 and thecommand signal that is fed to plant 318 (which is indicative ofacceleration), and computes an empirical estimate of the velocity of thehead. This estimated velocity is compared with the reference velocity(summing block 311) to obtain an error signal. This error signal is thenmultiplied by a suitable constant (multiplier 312) to obtain a scalederror signal. The scaled error signal is then compared with feedforwardsignal 300 (summing block 313) to obtain an adjusted command signal. Alimiter 314 and notch filter 316 are applied to this adjusted commandsignal to keep the command signal within acceptable current levels andto prevent instability, respectively. This limited, filtered commandsignal is then fed into plant 318 to control movement of the actuatorarm assembly.

FIG. 4 is a flowchart representation of a process of controlling thearrival phase of a seek operation in a disc drive in accordance withpreferred embodiments of the present invention. The distance to traveland time to complete the arrival phase of the seek are first calculated(block 400). The square root velocity profile is initially used in acontrol system as in FIG. 3 to control the deceleration of the actuatorarm assembly (block 402), and the square root velocity profile continuesto be used (block 404: No) until a pre-determined transition point isreached. When the transition point is reached (block 404: Yes), then thetime-linear velocity profile is used instead of the square root profile(block 406) until the desired track is reached (block 408), after whichtime track following and track access may be enabled.

Thus, a novel method and apparatus for controlling the arrival of a discdrive arm assembly at a track, are herein disclosed and characterized bysteps of determining a current velocity of the arm assembly; determininga current position of the arm assembly; determining a currentacceleration of the arm assembly; determining a reference velocity basedon at least the current position of the arm assembly; comparing thecurrent velocity of the arm assembly with the reference velocity togenerate an error signal; combining the error signal with a feedforwardsignal to generate a command signal, wherein the feedforward signal isderived from the current acceleration; and applying the command signalto move the arm assembly, wherein the reference velocity is determinedin accordance with a function that causes a first derivative withrespect to time of the reference velocity to vary linearly with respectto time.

It is important to note that while the present embodiments have beendescribed in the context of a fully functioning data processing system,those of ordinary skill in the art will appreciate that the processes ofthe present embodiments are capable of being distributed in the form ofa computer readable medium of instructions or other functionaldescriptive material and in a variety of other forms and that thepresent embodiments are equally applicable regardless of the particulartype of signal bearing media actually used to carry out thedistribution. Examples of computer readable media includerecordable-type media, such as a floppy disk, a hard disk drive, a RAM,CD-ROMs, DVD-ROMs, and transmission-type media, such as digital andanalog communications links, wired or wireless communications linksusing transmission forms, such as, for example, radio frequency andlight wave transmissions. The computer readable media may take the formof coded formats that are decoded for actual use in a particular dataprocessing system. Functional descriptive material is information thatimparts functionality to a machine. Functional descriptive materialincludes, but is not limited to, computer programs, instructions, rules,facts, definitions of computable functions, objects, and datastructures.

The description of the present embodiments has been presented forpurposes of illustration and description, and is not intended to beexhaustive or limited to the invention in the form disclosed. Manymodifications and variations will be apparent to those of ordinary skillin the art. The embodiments were chosen and described in order to bestexplain the principles of the invention, the practical application, andto enable others of ordinary skill in the art to understand theinvention for various embodiments with various modifications as aresuited to the particular use contemplated.

1. A method comprising generating a reference velocity to control amoveable arm, wherein the reference velocity is based on a functionexpressed in terms of a distance to be traveled and a remaining seektime that causes a first derivative with respect to time of thereference velocity to vary linearly with respect to time.
 2. The methodof claim 1, wherein the function is a first function, wherein thereference velocity is initially determined in accordance with a secondfunction, and wherein the reference velocity is determined in accordancewith the first function in response to the moveable arm reaching aposition that is within a pre-designated distance from a targetposition.
 3. An apparatus comprising: a moveable assembly; and circuitryhaving an output lead and coupled to control the moveable assembly,wherein the circuitry is adapted to generate a command signal responsiveto a reference velocity and provide the command signal on the outputlead, wherein the reference velocity is determined in accordance with afunction expressed in terms of a distance to be traveled and a remainingseek time that causes a first derivative with respect to time of thereference velocity to vary linearly with respect to time.
 4. Theapparatus of claim 3, wherein the function is a first function, whereinthe reference velocity is initially determined in accordance with asecond function that is distinct from the first function, and whereinthe reference velocity becomes determined in accordance with the firstfunction in response to the moveable assembly reaching a position thatis within a pre-designated distance from a desired position.
 5. Theapparatus of claim 3 further including a motor that is controlled by thecircuitry and is adapted to move the moveable assembly.
 6. The apparatusof claim 5 further including a storage medium where the moveableassembly is moved relative to the storage medium.
 7. The apparatus ofclaim 3, wherein the circuitry includes a stored-program computingdevice.
 8. The apparatus of claim 3, wherein the moveable assemblyincludes a transducer that is configured to rotate about an axis andmoves the transducer with respect to a plurality of tracks by rotatingabout the axis.
 9. The apparatus of claim 3, wherein the moveableassembly is configured to reposition the transducer with respect to theplurality of tracks by moving linearly in a radial direction withrespect to the storage medium.
 10. A method comprising: determining areference velocity based on at least a current position of a moveablearm; comparing a current velocity of the moveable arm with the referencevelocity to generate an error signal; combining the error signal with acompensation signal to generate a command signal, wherein thecompensation signal is derived from a current acceleration; and applyingthe command signal to move the moveable arm, wherein the referencevelocity is determined in accordance with a function that causes a firstderivative with respect to time of the reference velocity to varylinearly with respect to time.
 11. The method of claim 10 furthercomprising the steps of: determining the current velocity of themoveable arm; determining a current position of the moveable arm; anddetermining the current acceleration of the moveable arm.